home *** CD-ROM | disk | FTP | other *** search
- /*
- * Copyright 1993, 1994, Silicon Graphics, Inc.
- * All Rights Reserved.
- *
- * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
- * the contents of this file may not be disclosed to third parties, copied or
- * duplicated in any form, in whole or in part, without the prior written
- * permission of Silicon Graphics, Inc.
- *
- * RESTRICTED RIGHTS LEGEND:
- * Use, duplication or disclosure by the Government is subject to restrictions
- * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
- * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
- * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
- * rights reserved under the Copyright Laws of the United States.
- */
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <sys/mman.h>
- #include <fcntl.h>
- #include <sys/IP5.h>
- extern int errno;
- unsigned *clockaddr;
- /*****************************************************************************/
- double io3clock()
- {
- static int first = 1;
- int filed;
- if (first) {
- first = 0;
- /* Open memory special device */
- if ( (filed = open("/dev/mmem",O_RDONLY)) == -1) {
- perror ("ERROR in open"); exit(errno);
- }
- /* Map high resolution clock to user space */
- if ( ((int)(clockaddr = mmap(0, 8, PROT_READ, MAP_PRIVATE, filed, IOTIMER_ADDR))) == -1) {
- perror ("ERROR in mmap"); exit(errno);
- }
- }
- return ((double)(*clockaddr)/ 16.0 * 1.e-6);
- }
- double io3clock_()
- {
- return (io3clock());
- }
-
- double second_()
- {
- return (io3clock());
- }
-